package com.xyy.saas.payment.common.enums;

import com.xyy.ec.order.enums.BizSourceEnum;

import java.util.HashMap;
import java.util.Map;

/**
 * 资金类型
 */
public enum AmountTypeEnum {
    /**
     * 直连支付金额
     */
    DIRECT_PAY_AMOUNT,
    /**
     * 富民支付金额
     */
    FM_PAY_AMOUNT,
    /**
     * 购物金/余额支付金额
     */
    BALANCE_PAY_AMOUNT,
    /**
     * 退款金额
     */
    REFUND_AMOUNT,
    /**
     * 购物金/余额退款金额
     */
    BALANCE_REFUND_AMOUNT,
    /**
     * 平台补贴金额
     */
    PLATFORM_DISCOUNT_AMOUNT,
    /**
     * 佣金
     */
    BROKERAGE_AMOUNT,
    /**
     * 平安信用支付分账撤销
     */
    PINGAN_CREDIT_PAY_SETTLE_REFUND,
    /**
     * 平安信用支付买家会员间交易到卖家
     */
    PINGAN_CREDIT_PAY_ACCT_TRANS,
    /**
     * 平安信用支付买家会员间交易到卖家退款
     */
    PINGAN_CREDIT_PAY_ACCT_TRANS_REFUND,
    /**
     * 分账撤销
     */
    PINGAN_SETTLE_REFUND,
    /**
     * 平安信用支付卖家资金冻结
     */
    CREDIT_FREEZE,
    /**
     * 平安信用支付卖家资金解冻
     */
    CREDIT_UNFREEZE,
    /**
     * 平安信用支付卖家资金分润解冻
     */
    CREDIT_PU,
    /**
     * 非冻结充值撤销
     */
    RECHARGEREFUND,
    /**
     * 非冻结充值撤销
     */
    UNFREEZE_RECHARGEREFUND,


    // 小雨点支付结算
    /**
     * 小雨点支付结算：小雨点资方账户 会员间交易到 买家
     */
    XYD_CREDIT_FUND_PAY_ACCT_TRANS,

    /**
     * 小雨点支付结算：买家 会员间交易到 卖家
     */
    XYD_CREDIT_PAYER_PAY_ACCT_TRANS,

    /**
     * 小雨点支付结算：卖家资金冻结
     */
    XYD_CREDIT_FREEZE,

    // 小雨点退款
    /**
     * 小雨点退款： 卖家会员间交易到买家  会员间交易退款
     */
    XYD_CREDIT_PAY_ACCT_TRANS_REFUND,

    /**
     * 小雨点退款：卖家资金解冻
     */
    XYD_CREDIT_UNFREEZE,

    /**
     * 小雨点退款回补平台佣金户
     */
    XYD_CREDIT_REFUND_RETURN_BROKERAGE_AMOUNT,

    // 小雨点支付单分润
    /**
     * 小雨点支付单分润：卖家冻结资金解冻
     */
    XYD_CREDIT_PU,
    ;
    public static Map<String, AmountTypeEnum> channelMaps = new HashMap<>();
    static {
        channelMaps.put("pingan_credit", AmountTypeEnum.PINGAN_CREDIT_PAY_ACCT_TRANS);
        channelMaps.put("xyd_loan", AmountTypeEnum.XYD_CREDIT_PAYER_PAY_ACCT_TRANS);
    }
}
